package socket;

import com.alibaba.druid.pool.DruidDataSource;

import java.sql.Connection;

import java.sql.SQLException;

/**
 * 使用当前类维护连接数据库
 */
public class DBUtil {
    private static DruidDataSource ds;
    //静态代码块，在类加载的时候就加载驱动，避免重复加载
    static {
        ds=new DruidDataSource();
        ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
        ds.setUrl("jdbc:mysql://localhost:3306/chatDB?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true");
        ds.setUsername("root");
        ds.setPassword("root");
        ds.setInitialSize(5);//初始化连接
        ds.setMaxActive(20);//最大连接数
    }

    //重用的代码如果需要处理异常，是需要抛出的，因为每个调用该方法的处理异常都不同
    public static Connection getConnection() throws SQLException {
        // 获取连接
        return ds.getConnection();
    }





}
